package com.itlong.cloud.project.operate;

import com.itlong.cloud.POJO.DTO.operate.OperateU8BaseDataDTO;
import com.itlong.cloud.POJO.VO.operate.OperateU8BaseDataCustomerVO;
import com.itlong.cloud.POJO.VO.operate.OperateU8BaseDataDepartmentVO;
import com.itlong.cloud.POJO.VO.operate.OperateU8BaseDataSalesVO;
import com.itlong.cloud.utils.page.Page;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * <desc>
 *      运营-U8基础数据管理业务处理暴露接口
 * </desc>
 *
 * @createDate 2020/12/02
 */
@FeignClient("project-service")
public interface IOperateU8BaseDataServiceClient {


    /**
     * <desc>
     *      获取业务员部门列表
     * </desc>
     *
     * @return 标准格式化响应结果
     * @author Juguang.S
     * @createDate 2020/12/02
     */
    @RequestMapping(path = "/operate/u8/baseData/getDepartmentPage")
    Page<OperateU8BaseDataDepartmentVO> getDepartmentPage(@RequestBody OperateU8BaseDataDTO dto) throws Exception;

    /**
     * <desc>
     *      获取业务员部门列表
     * </desc>
     *
     * @return 标准格式化响应结果
     * @author Juguang.S
     * @createDate 2020/12/02
     */
    @RequestMapping(path = "/operate/u8/baseData/getSalesPage")
    Page<OperateU8BaseDataSalesVO> getSalesPage(@RequestBody OperateU8BaseDataDTO dto) throws Exception;

    /**
     * <desc>
     *      获取业务员部门列表
     * </desc>
     *
     * @return 标准格式化响应结果
     * @author Juguang.S
     * @createDate 2020/12/02
     */
    @RequestMapping(path = "/operate/u8/baseData/getCustomerPage")
    Page<OperateU8BaseDataCustomerVO> getCustomerPage(@RequestBody OperateU8BaseDataDTO dto) throws Exception;

    /**
     * <desc>
     *      运营基础数据与U8同步定时任务
     * </desc>
     *
     * @return 标准格式化响应结果
     * @author Juguang.S
     * @createDate 2020/12/03
     */
    @RequestMapping(path = "/operate/u8/baseDataBytime")
    void timeTaskSynchronizeBaseDataByU8() throws Exception;


}
